Code
import numpy as np
import matplotlib.pyplot as plt
import os
import tensorflow as tf
print("TensorFlow version:", tf.__version__)TensorFlow version: 2.14.0
Tony Duan
October 11, 2023
This guide uses the Fashion MNIST dataset which contains 70,000 grayscale images in 10 categories. The images show individual articles of clothing at low resolution (28 by 28 pixels), as seen here:
![]()
The images are 28x28 NumPy arrays, with pixel values ranging from 0 to 255. The labels are an array of integers, ranging from 0 to 9. These correspond to the class of clothing the image represents:

almost each number have ~6000 so total 60,000 on training
first train pic
Scale these values to a range of 0 to 1 before feeding them to the neural network model. To do so, divide the values by 255. It’s important that the training set and the testing set be preprocessed in the same way:
Optimizer —This is how the model is updated based on the data it sees and its loss function.
Loss function —This measures how accurate the model is during training. You want to minimize this function to “steer” the model in the right direction.
Metrics —Used to monitor the training and testing steps. The following example uses accuracy, the fraction of the images that are correctly classified.
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
flatten (Flatten) (None, 784) 0
dense (Dense) (None, 128) 100480
dense_1 (Dense) (None, 10) 1290
=================================================================
Total params: 101770 (397.54 KB)
Trainable params: 101770 (397.54 KB)
Non-trainable params: 0 (0.00 Byte)
_________________________________________________________________
Epoch 1/5
1/1875 [..............................] - ETA: 3:19 - loss: 2.4175 - accuracy: 0.1562 99/1875 [>.............................] - ETA: 0s - loss: 0.9238 - accuracy: 0.6872 203/1875 [==>...........................] - ETA: 0s - loss: 0.7725 - accuracy: 0.7377 308/1875 [===>..........................] - ETA: 0s - loss: 0.6927 - accuracy: 0.7623 413/1875 [=====>........................] - ETA: 0s - loss: 0.6524 - accuracy: 0.7749 517/1875 [=======>......................] - ETA: 0s - loss: 0.6313 - accuracy: 0.7815 622/1875 [========>.....................] - ETA: 0s - loss: 0.6106 - accuracy: 0.7871 727/1875 [==========>...................] - ETA: 0s - loss: 0.5915 - accuracy: 0.7932 832/1875 [============>.................] - ETA: 0s - loss: 0.5755 - accuracy: 0.7980 937/1875 [=============>................] - ETA: 0s - loss: 0.5658 - accuracy: 0.80131042/1875 [===============>..............] - ETA: 0s - loss: 0.5540 - accuracy: 0.80561147/1875 [=================>............] - ETA: 0s - loss: 0.5444 - accuracy: 0.80891253/1875 [===================>..........] - ETA: 0s - loss: 0.5355 - accuracy: 0.81171358/1875 [====================>.........] - ETA: 0s - loss: 0.5256 - accuracy: 0.81481464/1875 [======================>.......] - ETA: 0s - loss: 0.5191 - accuracy: 0.81641570/1875 [========================>.....] - ETA: 0s - loss: 0.5136 - accuracy: 0.81821676/1875 [=========================>....] - ETA: 0s - loss: 0.5076 - accuracy: 0.82041782/1875 [===========================>..] - ETA: 0s - loss: 0.5006 - accuracy: 0.82271875/1875 [==============================] - 1s 480us/step - loss: 0.4980 - accuracy: 0.8235
Epoch 2/5
1/1875 [..............................] - ETA: 1s - loss: 0.3227 - accuracy: 0.9062 99/1875 [>.............................] - ETA: 0s - loss: 0.3789 - accuracy: 0.8602 203/1875 [==>...........................] - ETA: 0s - loss: 0.3903 - accuracy: 0.8615 309/1875 [===>..........................] - ETA: 0s - loss: 0.3988 - accuracy: 0.8582 414/1875 [=====>........................] - ETA: 0s - loss: 0.3952 - accuracy: 0.8598 520/1875 [=======>......................] - ETA: 0s - loss: 0.3909 - accuracy: 0.8611 626/1875 [=========>....................] - ETA: 0s - loss: 0.3847 - accuracy: 0.8627 731/1875 [==========>...................] - ETA: 0s - loss: 0.3870 - accuracy: 0.8620 836/1875 [============>.................] - ETA: 0s - loss: 0.3803 - accuracy: 0.8644 941/1875 [==============>...............] - ETA: 0s - loss: 0.3813 - accuracy: 0.86381047/1875 [===============>..............] - ETA: 0s - loss: 0.3790 - accuracy: 0.86491152/1875 [=================>............] - ETA: 0s - loss: 0.3797 - accuracy: 0.86431258/1875 [===================>..........] - ETA: 0s - loss: 0.3794 - accuracy: 0.86381364/1875 [====================>.........] - ETA: 0s - loss: 0.3789 - accuracy: 0.86381471/1875 [======================>.......] - ETA: 0s - loss: 0.3774 - accuracy: 0.86451577/1875 [========================>.....] - ETA: 0s - loss: 0.3769 - accuracy: 0.86441683/1875 [=========================>....] - ETA: 0s - loss: 0.3757 - accuracy: 0.86421789/1875 [===========================>..] - ETA: 0s - loss: 0.3739 - accuracy: 0.86511875/1875 [==============================] - 1s 477us/step - loss: 0.3737 - accuracy: 0.8650
Epoch 3/5
1/1875 [..............................] - ETA: 1s - loss: 0.2166 - accuracy: 0.9375 110/1875 [>.............................] - ETA: 0s - loss: 0.3621 - accuracy: 0.8625 218/1875 [==>...........................] - ETA: 0s - loss: 0.3563 - accuracy: 0.8651 328/1875 [====>.........................] - ETA: 0s - loss: 0.3533 - accuracy: 0.8699 435/1875 [=====>........................] - ETA: 0s - loss: 0.3475 - accuracy: 0.8731 542/1875 [=======>......................] - ETA: 0s - loss: 0.3455 - accuracy: 0.8723 648/1875 [=========>....................] - ETA: 0s - loss: 0.3432 - accuracy: 0.8723 756/1875 [===========>..................] - ETA: 0s - loss: 0.3409 - accuracy: 0.8739 864/1875 [============>.................] - ETA: 0s - loss: 0.3414 - accuracy: 0.8737 971/1875 [==============>...............] - ETA: 0s - loss: 0.3412 - accuracy: 0.87401080/1875 [================>.............] - ETA: 0s - loss: 0.3383 - accuracy: 0.87511188/1875 [==================>...........] - ETA: 0s - loss: 0.3364 - accuracy: 0.87561295/1875 [===================>..........] - ETA: 0s - loss: 0.3375 - accuracy: 0.87541402/1875 [=====================>........] - ETA: 0s - loss: 0.3384 - accuracy: 0.87531508/1875 [=======================>......] - ETA: 0s - loss: 0.3372 - accuracy: 0.87561619/1875 [========================>.....] - ETA: 0s - loss: 0.3363 - accuracy: 0.87581725/1875 [==========================>...] - ETA: 0s - loss: 0.3371 - accuracy: 0.87531830/1875 [============================>.] - ETA: 0s - loss: 0.3365 - accuracy: 0.87571875/1875 [==============================] - 1s 468us/step - loss: 0.3371 - accuracy: 0.8757
Epoch 4/5
1/1875 [..............................] - ETA: 1s - loss: 0.2570 - accuracy: 0.9375 107/1875 [>.............................] - ETA: 0s - loss: 0.3284 - accuracy: 0.8835 212/1875 [==>...........................] - ETA: 0s - loss: 0.3300 - accuracy: 0.8784 318/1875 [====>.........................] - ETA: 0s - loss: 0.3293 - accuracy: 0.8781 424/1875 [=====>........................] - ETA: 0s - loss: 0.3242 - accuracy: 0.8808 526/1875 [=======>......................] - ETA: 0s - loss: 0.3223 - accuracy: 0.8816 629/1875 [=========>....................] - ETA: 0s - loss: 0.3190 - accuracy: 0.8828 734/1875 [==========>...................] - ETA: 0s - loss: 0.3171 - accuracy: 0.8841 840/1875 [============>.................] - ETA: 0s - loss: 0.3149 - accuracy: 0.8846 946/1875 [==============>...............] - ETA: 0s - loss: 0.3134 - accuracy: 0.88621052/1875 [===============>..............] - ETA: 0s - loss: 0.3131 - accuracy: 0.88641156/1875 [=================>............] - ETA: 0s - loss: 0.3134 - accuracy: 0.88591261/1875 [===================>..........] - ETA: 0s - loss: 0.3118 - accuracy: 0.88621366/1875 [====================>.........] - ETA: 0s - loss: 0.3115 - accuracy: 0.88631471/1875 [======================>.......] - ETA: 0s - loss: 0.3126 - accuracy: 0.88501576/1875 [========================>.....] - ETA: 0s - loss: 0.3122 - accuracy: 0.88521682/1875 [=========================>....] - ETA: 0s - loss: 0.3118 - accuracy: 0.88521786/1875 [===========================>..] - ETA: 0s - loss: 0.3114 - accuracy: 0.88511875/1875 [==============================] - 1s 479us/step - loss: 0.3122 - accuracy: 0.8848
Epoch 5/5
1/1875 [..............................] - ETA: 1s - loss: 0.3907 - accuracy: 0.8438 105/1875 [>.............................] - ETA: 0s - loss: 0.3071 - accuracy: 0.8830 208/1875 [==>...........................] - ETA: 0s - loss: 0.3041 - accuracy: 0.8851 312/1875 [===>..........................] - ETA: 0s - loss: 0.3007 - accuracy: 0.8864 416/1875 [=====>........................] - ETA: 0s - loss: 0.3013 - accuracy: 0.8877 521/1875 [=======>......................] - ETA: 0s - loss: 0.3009 - accuracy: 0.8874 626/1875 [=========>....................] - ETA: 0s - loss: 0.2973 - accuracy: 0.8887 731/1875 [==========>...................] - ETA: 0s - loss: 0.2961 - accuracy: 0.8895 835/1875 [============>.................] - ETA: 0s - loss: 0.2966 - accuracy: 0.8894 940/1875 [==============>...............] - ETA: 0s - loss: 0.2948 - accuracy: 0.89031045/1875 [===============>..............] - ETA: 0s - loss: 0.2941 - accuracy: 0.89061151/1875 [=================>............] - ETA: 0s - loss: 0.2934 - accuracy: 0.89091257/1875 [===================>..........] - ETA: 0s - loss: 0.2950 - accuracy: 0.89101363/1875 [====================>.........] - ETA: 0s - loss: 0.2960 - accuracy: 0.89101468/1875 [======================>.......] - ETA: 0s - loss: 0.2959 - accuracy: 0.89081574/1875 [========================>.....] - ETA: 0s - loss: 0.2962 - accuracy: 0.89071676/1875 [=========================>....] - ETA: 0s - loss: 0.2971 - accuracy: 0.89031781/1875 [===========================>..] - ETA: 0s - loss: 0.2959 - accuracy: 0.89091875/1875 [==============================] - 1s 480us/step - loss: 0.2952 - accuracy: 0.8910
<keras.src.callbacks.History at 0x1533d7a10>
its stop on 34 epochs since it reach 95% Accuracy
model = tf.keras.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dense(10)
])
model.compile(optimizer='adam',
loss=loss_fn,
metrics=['accuracy'])
history = model.fit(train_images, train_labels
,validation_data=(test_images, test_labels)
,epochs=50,callbacks=[callbacks])Epoch 1/50
1/1875 [..............................] - ETA: 2:48 - loss: 2.4040 - accuracy: 0.0938 99/1875 [>.............................] - ETA: 0s - loss: 0.9319 - accuracy: 0.6834 212/1875 [==>...........................] - ETA: 0s - loss: 0.7658 - accuracy: 0.7370 319/1875 [====>.........................] - ETA: 0s - loss: 0.6910 - accuracy: 0.7601 426/1875 [=====>........................] - ETA: 0s - loss: 0.6483 - accuracy: 0.7749 531/1875 [=======>......................] - ETA: 0s - loss: 0.6168 - accuracy: 0.7846 638/1875 [=========>....................] - ETA: 0s - loss: 0.5997 - accuracy: 0.7914 745/1875 [==========>...................] - ETA: 0s - loss: 0.5829 - accuracy: 0.7963 851/1875 [============>.................] - ETA: 0s - loss: 0.5691 - accuracy: 0.8009 958/1875 [==============>...............] - ETA: 0s - loss: 0.5577 - accuracy: 0.80511071/1875 [================>.............] - ETA: 0s - loss: 0.5479 - accuracy: 0.80861182/1875 [=================>............] - ETA: 0s - loss: 0.5361 - accuracy: 0.81261289/1875 [===================>..........] - ETA: 0s - loss: 0.5282 - accuracy: 0.81501399/1875 [=====================>........] - ETA: 0s - loss: 0.5206 - accuracy: 0.81791505/1875 [=======================>......] - ETA: 0s - loss: 0.5142 - accuracy: 0.81991613/1875 [========================>.....] - ETA: 0s - loss: 0.5082 - accuracy: 0.82211719/1875 [==========================>...] - ETA: 0s - loss: 0.5026 - accuracy: 0.82421824/1875 [============================>.] - ETA: 0s - loss: 0.4977 - accuracy: 0.82571875/1875 [==============================] - 1s 608us/step - loss: 0.4961 - accuracy: 0.8262 - val_loss: 0.4306 - val_accuracy: 0.8504
Epoch 2/50
1/1875 [..............................] - ETA: 1s - loss: 0.1758 - accuracy: 0.9375 106/1875 [>.............................] - ETA: 0s - loss: 0.3694 - accuracy: 0.8653 212/1875 [==>...........................] - ETA: 0s - loss: 0.3691 - accuracy: 0.8687 319/1875 [====>.........................] - ETA: 0s - loss: 0.3807 - accuracy: 0.8637 424/1875 [=====>........................] - ETA: 0s - loss: 0.3774 - accuracy: 0.8641 531/1875 [=======>......................] - ETA: 0s - loss: 0.3798 - accuracy: 0.8628 642/1875 [=========>....................] - ETA: 0s - loss: 0.3773 - accuracy: 0.8631 748/1875 [==========>...................] - ETA: 0s - loss: 0.3734 - accuracy: 0.8655 856/1875 [============>.................] - ETA: 0s - loss: 0.3741 - accuracy: 0.8650 965/1875 [==============>...............] - ETA: 0s - loss: 0.3745 - accuracy: 0.86401072/1875 [================>.............] - ETA: 0s - loss: 0.3748 - accuracy: 0.86441179/1875 [=================>............] - ETA: 0s - loss: 0.3753 - accuracy: 0.86391287/1875 [===================>..........] - ETA: 0s - loss: 0.3744 - accuracy: 0.86401394/1875 [=====================>........] - ETA: 0s - loss: 0.3763 - accuracy: 0.86411501/1875 [=======================>......] - ETA: 0s - loss: 0.3769 - accuracy: 0.86431609/1875 [========================>.....] - ETA: 0s - loss: 0.3745 - accuracy: 0.86511717/1875 [==========================>...] - ETA: 0s - loss: 0.3734 - accuracy: 0.86531825/1875 [============================>.] - ETA: 0s - loss: 0.3737 - accuracy: 0.86521875/1875 [==============================] - 1s 523us/step - loss: 0.3734 - accuracy: 0.8651 - val_loss: 0.4157 - val_accuracy: 0.8477
Epoch 3/50
1/1875 [..............................] - ETA: 1s - loss: 0.2406 - accuracy: 0.9062 108/1875 [>.............................] - ETA: 0s - loss: 0.3424 - accuracy: 0.8712 216/1875 [==>...........................] - ETA: 0s - loss: 0.3498 - accuracy: 0.8701 324/1875 [====>.........................] - ETA: 0s - loss: 0.3576 - accuracy: 0.8684 433/1875 [=====>........................] - ETA: 0s - loss: 0.3558 - accuracy: 0.8693 541/1875 [=======>......................] - ETA: 0s - loss: 0.3519 - accuracy: 0.8711 649/1875 [=========>....................] - ETA: 0s - loss: 0.3492 - accuracy: 0.8716 756/1875 [===========>..................] - ETA: 0s - loss: 0.3456 - accuracy: 0.8740 864/1875 [============>.................] - ETA: 0s - loss: 0.3424 - accuracy: 0.8753 970/1875 [==============>...............] - ETA: 0s - loss: 0.3409 - accuracy: 0.87541076/1875 [================>.............] - ETA: 0s - loss: 0.3426 - accuracy: 0.87521183/1875 [=================>............] - ETA: 0s - loss: 0.3417 - accuracy: 0.87531291/1875 [===================>..........] - ETA: 0s - loss: 0.3393 - accuracy: 0.87621398/1875 [=====================>........] - ETA: 0s - loss: 0.3398 - accuracy: 0.87631506/1875 [=======================>......] - ETA: 0s - loss: 0.3364 - accuracy: 0.87771613/1875 [========================>.....] - ETA: 0s - loss: 0.3366 - accuracy: 0.87771719/1875 [==========================>...] - ETA: 0s - loss: 0.3359 - accuracy: 0.87801826/1875 [============================>.] - ETA: 0s - loss: 0.3360 - accuracy: 0.87781875/1875 [==============================] - 1s 523us/step - loss: 0.3355 - accuracy: 0.8778 - val_loss: 0.3901 - val_accuracy: 0.8646
Epoch 4/50
1/1875 [..............................] - ETA: 1s - loss: 0.3782 - accuracy: 0.8750 107/1875 [>.............................] - ETA: 0s - loss: 0.3336 - accuracy: 0.8785 214/1875 [==>...........................] - ETA: 0s - loss: 0.3233 - accuracy: 0.8822 322/1875 [====>.........................] - ETA: 0s - loss: 0.3191 - accuracy: 0.8843 427/1875 [=====>........................] - ETA: 0s - loss: 0.3163 - accuracy: 0.8866 533/1875 [=======>......................] - ETA: 0s - loss: 0.3148 - accuracy: 0.8878 640/1875 [=========>....................] - ETA: 0s - loss: 0.3170 - accuracy: 0.8861 745/1875 [==========>...................] - ETA: 0s - loss: 0.3140 - accuracy: 0.8872 848/1875 [============>.................] - ETA: 0s - loss: 0.3127 - accuracy: 0.8879 953/1875 [==============>...............] - ETA: 0s - loss: 0.3129 - accuracy: 0.88821060/1875 [===============>..............] - ETA: 0s - loss: 0.3107 - accuracy: 0.88881167/1875 [=================>............] - ETA: 0s - loss: 0.3111 - accuracy: 0.88851274/1875 [===================>..........] - ETA: 0s - loss: 0.3119 - accuracy: 0.88781379/1875 [=====================>........] - ETA: 0s - loss: 0.3133 - accuracy: 0.88631487/1875 [======================>.......] - ETA: 0s - loss: 0.3140 - accuracy: 0.88591592/1875 [========================>.....] - ETA: 0s - loss: 0.3136 - accuracy: 0.88601696/1875 [==========================>...] - ETA: 0s - loss: 0.3137 - accuracy: 0.88601801/1875 [===========================>..] - ETA: 0s - loss: 0.3122 - accuracy: 0.88661875/1875 [==============================] - 1s 531us/step - loss: 0.3119 - accuracy: 0.8866 - val_loss: 0.3583 - val_accuracy: 0.8739
Epoch 5/50
1/1875 [..............................] - ETA: 1s - loss: 0.2967 - accuracy: 0.8438 108/1875 [>.............................] - ETA: 0s - loss: 0.2851 - accuracy: 0.9005 215/1875 [==>...........................] - ETA: 0s - loss: 0.2919 - accuracy: 0.8940 321/1875 [====>.........................] - ETA: 0s - loss: 0.2985 - accuracy: 0.8888 427/1875 [=====>........................] - ETA: 0s - loss: 0.2985 - accuracy: 0.8901 539/1875 [=======>......................] - ETA: 0s - loss: 0.3010 - accuracy: 0.8901 645/1875 [=========>....................] - ETA: 0s - loss: 0.2990 - accuracy: 0.8908 750/1875 [===========>..................] - ETA: 0s - loss: 0.3008 - accuracy: 0.8904 850/1875 [============>.................] - ETA: 0s - loss: 0.3001 - accuracy: 0.8910 951/1875 [==============>...............] - ETA: 0s - loss: 0.2988 - accuracy: 0.89121061/1875 [===============>..............] - ETA: 0s - loss: 0.2977 - accuracy: 0.89111170/1875 [=================>............] - ETA: 0s - loss: 0.2962 - accuracy: 0.89211275/1875 [===================>..........] - ETA: 0s - loss: 0.2960 - accuracy: 0.89201381/1875 [=====================>........] - ETA: 0s - loss: 0.2946 - accuracy: 0.89231487/1875 [======================>.......] - ETA: 0s - loss: 0.2950 - accuracy: 0.89221596/1875 [========================>.....] - ETA: 0s - loss: 0.2934 - accuracy: 0.89271704/1875 [==========================>...] - ETA: 0s - loss: 0.2930 - accuracy: 0.89261812/1875 [===========================>..] - ETA: 0s - loss: 0.2924 - accuracy: 0.89311875/1875 [==============================] - 1s 525us/step - loss: 0.2928 - accuracy: 0.8928 - val_loss: 0.3584 - val_accuracy: 0.8719
Epoch 6/50
1/1875 [..............................] - ETA: 1s - loss: 0.1930 - accuracy: 0.9375 111/1875 [>.............................] - ETA: 0s - loss: 0.2888 - accuracy: 0.9023 217/1875 [==>...........................] - ETA: 0s - loss: 0.2812 - accuracy: 0.9001 323/1875 [====>.........................] - ETA: 0s - loss: 0.2804 - accuracy: 0.8999 426/1875 [=====>........................] - ETA: 0s - loss: 0.2805 - accuracy: 0.8973 528/1875 [=======>......................] - ETA: 0s - loss: 0.2806 - accuracy: 0.8962 623/1875 [========>.....................] - ETA: 0s - loss: 0.2801 - accuracy: 0.8962 725/1875 [==========>...................] - ETA: 0s - loss: 0.2789 - accuracy: 0.8971 828/1875 [============>.................] - ETA: 0s - loss: 0.2793 - accuracy: 0.8977 930/1875 [=============>................] - ETA: 0s - loss: 0.2787 - accuracy: 0.89801032/1875 [===============>..............] - ETA: 0s - loss: 0.2777 - accuracy: 0.89871130/1875 [=================>............] - ETA: 0s - loss: 0.2804 - accuracy: 0.89771234/1875 [==================>...........] - ETA: 0s - loss: 0.2791 - accuracy: 0.89861339/1875 [====================>.........] - ETA: 0s - loss: 0.2786 - accuracy: 0.89891445/1875 [======================>.......] - ETA: 0s - loss: 0.2799 - accuracy: 0.89821550/1875 [=======================>......] - ETA: 0s - loss: 0.2793 - accuracy: 0.89811656/1875 [=========================>....] - ETA: 0s - loss: 0.2790 - accuracy: 0.89821762/1875 [===========================>..] - ETA: 0s - loss: 0.2801 - accuracy: 0.89801810/1875 [===========================>..] - ETA: 0s - loss: 0.2798 - accuracy: 0.89801875/1875 [==============================] - 1s 559us/step - loss: 0.2796 - accuracy: 0.8979 - val_loss: 0.3511 - val_accuracy: 0.8783
Epoch 7/50
1/1875 [..............................] - ETA: 1s - loss: 0.1649 - accuracy: 0.9375 105/1875 [>.............................] - ETA: 0s - loss: 0.2633 - accuracy: 0.9024 210/1875 [==>...........................] - ETA: 0s - loss: 0.2661 - accuracy: 0.9034 311/1875 [===>..........................] - ETA: 0s - loss: 0.2668 - accuracy: 0.9035 411/1875 [=====>........................] - ETA: 0s - loss: 0.2679 - accuracy: 0.9042 515/1875 [=======>......................] - ETA: 0s - loss: 0.2726 - accuracy: 0.9010 620/1875 [========>.....................] - ETA: 0s - loss: 0.2706 - accuracy: 0.9022 726/1875 [==========>...................] - ETA: 0s - loss: 0.2688 - accuracy: 0.9021 831/1875 [============>.................] - ETA: 0s - loss: 0.2682 - accuracy: 0.9018 936/1875 [=============>................] - ETA: 0s - loss: 0.2693 - accuracy: 0.90101041/1875 [===============>..............] - ETA: 0s - loss: 0.2689 - accuracy: 0.90101146/1875 [=================>............] - ETA: 0s - loss: 0.2713 - accuracy: 0.90041250/1875 [===================>..........] - ETA: 0s - loss: 0.2700 - accuracy: 0.90131354/1875 [====================>.........] - ETA: 0s - loss: 0.2699 - accuracy: 0.90101458/1875 [======================>.......] - ETA: 0s - loss: 0.2684 - accuracy: 0.90111564/1875 [========================>.....] - ETA: 0s - loss: 0.2670 - accuracy: 0.90131668/1875 [=========================>....] - ETA: 0s - loss: 0.2668 - accuracy: 0.90151771/1875 [===========================>..] - ETA: 0s - loss: 0.2676 - accuracy: 0.90111875/1875 [==============================] - ETA: 0s - loss: 0.2664 - accuracy: 0.90141875/1875 [==============================] - 1s 540us/step - loss: 0.2664 - accuracy: 0.9014 - val_loss: 0.3551 - val_accuracy: 0.8732
Epoch 8/50
1/1875 [..............................] - ETA: 1s - loss: 0.1068 - accuracy: 1.0000 105/1875 [>.............................] - ETA: 0s - loss: 0.2535 - accuracy: 0.9057 208/1875 [==>...........................] - ETA: 0s - loss: 0.2500 - accuracy: 0.9087 312/1875 [===>..........................] - ETA: 0s - loss: 0.2515 - accuracy: 0.9073 418/1875 [=====>........................] - ETA: 0s - loss: 0.2535 - accuracy: 0.9067 522/1875 [=======>......................] - ETA: 0s - loss: 0.2529 - accuracy: 0.9060 625/1875 [=========>....................] - ETA: 0s - loss: 0.2526 - accuracy: 0.9056 729/1875 [==========>...................] - ETA: 0s - loss: 0.2520 - accuracy: 0.9056 835/1875 [============>.................] - ETA: 0s - loss: 0.2526 - accuracy: 0.9053 939/1875 [==============>...............] - ETA: 0s - loss: 0.2551 - accuracy: 0.90471039/1875 [===============>..............] - ETA: 0s - loss: 0.2554 - accuracy: 0.90471138/1875 [=================>............] - ETA: 0s - loss: 0.2555 - accuracy: 0.90471238/1875 [==================>...........] - ETA: 0s - loss: 0.2559 - accuracy: 0.90451342/1875 [====================>.........] - ETA: 0s - loss: 0.2554 - accuracy: 0.90491446/1875 [======================>.......] - ETA: 0s - loss: 0.2562 - accuracy: 0.90461551/1875 [=======================>......] - ETA: 0s - loss: 0.2560 - accuracy: 0.90501659/1875 [=========================>....] - ETA: 0s - loss: 0.2548 - accuracy: 0.90561763/1875 [===========================>..] - ETA: 0s - loss: 0.2544 - accuracy: 0.90561868/1875 [============================>.] - ETA: 0s - loss: 0.2552 - accuracy: 0.90551875/1875 [==============================] - 1s 541us/step - loss: 0.2550 - accuracy: 0.9056 - val_loss: 0.3359 - val_accuracy: 0.8821
Epoch 9/50
1/1875 [..............................] - ETA: 1s - loss: 0.2197 - accuracy: 0.9062 106/1875 [>.............................] - ETA: 0s - loss: 0.2342 - accuracy: 0.9119 209/1875 [==>...........................] - ETA: 0s - loss: 0.2332 - accuracy: 0.9145 314/1875 [====>.........................] - ETA: 0s - loss: 0.2390 - accuracy: 0.9124 417/1875 [=====>........................] - ETA: 0s - loss: 0.2411 - accuracy: 0.9110 520/1875 [=======>......................] - ETA: 0s - loss: 0.2409 - accuracy: 0.9117 624/1875 [========>.....................] - ETA: 0s - loss: 0.2424 - accuracy: 0.9099 728/1875 [==========>...................] - ETA: 0s - loss: 0.2448 - accuracy: 0.9086 833/1875 [============>.................] - ETA: 0s - loss: 0.2453 - accuracy: 0.9086 938/1875 [==============>...............] - ETA: 0s - loss: 0.2442 - accuracy: 0.90911041/1875 [===============>..............] - ETA: 0s - loss: 0.2446 - accuracy: 0.90861147/1875 [=================>............] - ETA: 0s - loss: 0.2452 - accuracy: 0.90791253/1875 [===================>..........] - ETA: 0s - loss: 0.2444 - accuracy: 0.90851351/1875 [====================>.........] - ETA: 0s - loss: 0.2452 - accuracy: 0.90821450/1875 [======================>.......] - ETA: 0s - loss: 0.2446 - accuracy: 0.90851549/1875 [=======================>......] - ETA: 0s - loss: 0.2436 - accuracy: 0.90871645/1875 [=========================>....] - ETA: 0s - loss: 0.2431 - accuracy: 0.90881744/1875 [==========================>...] - ETA: 0s - loss: 0.2440 - accuracy: 0.90831843/1875 [============================>.] - ETA: 0s - loss: 0.2450 - accuracy: 0.90841875/1875 [==============================] - 1s 548us/step - loss: 0.2455 - accuracy: 0.9082 - val_loss: 0.3337 - val_accuracy: 0.8817
Epoch 10/50
1/1875 [..............................] - ETA: 1s - loss: 0.2926 - accuracy: 0.9062 106/1875 [>.............................] - ETA: 0s - loss: 0.2303 - accuracy: 0.9189 212/1875 [==>...........................] - ETA: 0s - loss: 0.2238 - accuracy: 0.9192 317/1875 [====>.........................] - ETA: 0s - loss: 0.2318 - accuracy: 0.9151 421/1875 [=====>........................] - ETA: 0s - loss: 0.2311 - accuracy: 0.9148 525/1875 [=======>......................] - ETA: 0s - loss: 0.2314 - accuracy: 0.9129 629/1875 [=========>....................] - ETA: 0s - loss: 0.2360 - accuracy: 0.9111 733/1875 [==========>...................] - ETA: 0s - loss: 0.2369 - accuracy: 0.9109 839/1875 [============>.................] - ETA: 0s - loss: 0.2359 - accuracy: 0.9115 944/1875 [==============>...............] - ETA: 0s - loss: 0.2355 - accuracy: 0.91171049/1875 [===============>..............] - ETA: 0s - loss: 0.2371 - accuracy: 0.91131156/1875 [=================>............] - ETA: 0s - loss: 0.2389 - accuracy: 0.91081261/1875 [===================>..........] - ETA: 0s - loss: 0.2383 - accuracy: 0.91081360/1875 [====================>.........] - ETA: 0s - loss: 0.2388 - accuracy: 0.91071465/1875 [======================>.......] - ETA: 0s - loss: 0.2393 - accuracy: 0.91081571/1875 [========================>.....] - ETA: 0s - loss: 0.2381 - accuracy: 0.91121677/1875 [=========================>....] - ETA: 0s - loss: 0.2389 - accuracy: 0.91071784/1875 [===========================>..] - ETA: 0s - loss: 0.2379 - accuracy: 0.91131875/1875 [==============================] - 1s 538us/step - loss: 0.2379 - accuracy: 0.9115 - val_loss: 0.3678 - val_accuracy: 0.8738
Epoch 11/50
1/1875 [..............................] - ETA: 1s - loss: 0.1484 - accuracy: 0.9375 105/1875 [>.............................] - ETA: 0s - loss: 0.2165 - accuracy: 0.9185 210/1875 [==>...........................] - ETA: 0s - loss: 0.2194 - accuracy: 0.9167 315/1875 [====>.........................] - ETA: 0s - loss: 0.2240 - accuracy: 0.9156 401/1875 [=====>........................] - ETA: 0s - loss: 0.2236 - accuracy: 0.9158 470/1875 [======>.......................] - ETA: 0s - loss: 0.2283 - accuracy: 0.9153 574/1875 [========>.....................] - ETA: 0s - loss: 0.2267 - accuracy: 0.9158 678/1875 [=========>....................] - ETA: 0s - loss: 0.2269 - accuracy: 0.9159 783/1875 [===========>..................] - ETA: 0s - loss: 0.2276 - accuracy: 0.9151 888/1875 [=============>................] - ETA: 0s - loss: 0.2273 - accuracy: 0.9152 994/1875 [==============>...............] - ETA: 0s - loss: 0.2269 - accuracy: 0.91521100/1875 [================>.............] - ETA: 0s - loss: 0.2278 - accuracy: 0.91411206/1875 [==================>...........] - ETA: 0s - loss: 0.2251 - accuracy: 0.91531312/1875 [===================>..........] - ETA: 0s - loss: 0.2251 - accuracy: 0.91561417/1875 [=====================>........] - ETA: 0s - loss: 0.2258 - accuracy: 0.91531523/1875 [=======================>......] - ETA: 0s - loss: 0.2262 - accuracy: 0.91531629/1875 [=========================>....] - ETA: 0s - loss: 0.2272 - accuracy: 0.91491734/1875 [==========================>...] - ETA: 0s - loss: 0.2284 - accuracy: 0.91471835/1875 [============================>.] - ETA: 0s - loss: 0.2299 - accuracy: 0.91411875/1875 [==============================] - 1s 553us/step - loss: 0.2303 - accuracy: 0.9140 - val_loss: 0.3382 - val_accuracy: 0.8829
Epoch 12/50
1/1875 [..............................] - ETA: 1s - loss: 0.2850 - accuracy: 0.9062 105/1875 [>.............................] - ETA: 0s - loss: 0.2213 - accuracy: 0.9149 211/1875 [==>...........................] - ETA: 0s - loss: 0.2201 - accuracy: 0.9174 321/1875 [====>.........................] - ETA: 0s - loss: 0.2147 - accuracy: 0.9199 424/1875 [=====>........................] - ETA: 0s - loss: 0.2118 - accuracy: 0.9205 527/1875 [=======>......................] - ETA: 0s - loss: 0.2139 - accuracy: 0.9211 631/1875 [=========>....................] - ETA: 0s - loss: 0.2179 - accuracy: 0.9198 736/1875 [==========>...................] - ETA: 0s - loss: 0.2173 - accuracy: 0.9200 841/1875 [============>.................] - ETA: 0s - loss: 0.2151 - accuracy: 0.9207 946/1875 [==============>...............] - ETA: 0s - loss: 0.2159 - accuracy: 0.92061052/1875 [===============>..............] - ETA: 0s - loss: 0.2159 - accuracy: 0.92041157/1875 [=================>............] - ETA: 0s - loss: 0.2168 - accuracy: 0.92011261/1875 [===================>..........] - ETA: 0s - loss: 0.2165 - accuracy: 0.91981365/1875 [====================>.........] - ETA: 0s - loss: 0.2172 - accuracy: 0.91971469/1875 [======================>.......] - ETA: 0s - loss: 0.2181 - accuracy: 0.91911575/1875 [========================>.....] - ETA: 0s - loss: 0.2192 - accuracy: 0.91871681/1875 [=========================>....] - ETA: 0s - loss: 0.2202 - accuracy: 0.91821787/1875 [===========================>..] - ETA: 0s - loss: 0.2202 - accuracy: 0.91821875/1875 [==============================] - 1s 534us/step - loss: 0.2213 - accuracy: 0.9173 - val_loss: 0.3465 - val_accuracy: 0.8824
Epoch 13/50
1/1875 [..............................] - ETA: 1s - loss: 0.4096 - accuracy: 0.8750 106/1875 [>.............................] - ETA: 0s - loss: 0.2227 - accuracy: 0.9239 211/1875 [==>...........................] - ETA: 0s - loss: 0.2179 - accuracy: 0.9197 314/1875 [====>.........................] - ETA: 0s - loss: 0.2124 - accuracy: 0.9219 418/1875 [=====>........................] - ETA: 0s - loss: 0.2126 - accuracy: 0.9215 522/1875 [=======>......................] - ETA: 0s - loss: 0.2154 - accuracy: 0.9193 628/1875 [=========>....................] - ETA: 0s - loss: 0.2157 - accuracy: 0.9186 733/1875 [==========>...................] - ETA: 0s - loss: 0.2149 - accuracy: 0.9195 838/1875 [============>.................] - ETA: 0s - loss: 0.2154 - accuracy: 0.9201 943/1875 [==============>...............] - ETA: 0s - loss: 0.2141 - accuracy: 0.92031047/1875 [===============>..............] - ETA: 0s - loss: 0.2135 - accuracy: 0.92051152/1875 [=================>............] - ETA: 0s - loss: 0.2136 - accuracy: 0.92061257/1875 [===================>..........] - ETA: 0s - loss: 0.2138 - accuracy: 0.92031363/1875 [====================>.........] - ETA: 0s - loss: 0.2141 - accuracy: 0.92041470/1875 [======================>.......] - ETA: 0s - loss: 0.2155 - accuracy: 0.91991577/1875 [========================>.....] - ETA: 0s - loss: 0.2169 - accuracy: 0.91951681/1875 [=========================>....] - ETA: 0s - loss: 0.2167 - accuracy: 0.91941785/1875 [===========================>..] - ETA: 0s - loss: 0.2153 - accuracy: 0.91991875/1875 [==============================] - 1s 534us/step - loss: 0.2153 - accuracy: 0.9197 - val_loss: 0.3473 - val_accuracy: 0.8872
Epoch 14/50
1/1875 [..............................] - ETA: 1s - loss: 0.1127 - accuracy: 0.9375 105/1875 [>.............................] - ETA: 0s - loss: 0.1834 - accuracy: 0.9324 210/1875 [==>...........................] - ETA: 0s - loss: 0.1961 - accuracy: 0.9277 314/1875 [====>.........................] - ETA: 0s - loss: 0.2053 - accuracy: 0.9256 417/1875 [=====>........................] - ETA: 0s - loss: 0.2000 - accuracy: 0.9279 521/1875 [=======>......................] - ETA: 0s - loss: 0.2052 - accuracy: 0.9257 626/1875 [=========>....................] - ETA: 0s - loss: 0.2065 - accuracy: 0.9250 733/1875 [==========>...................] - ETA: 0s - loss: 0.2082 - accuracy: 0.9244 838/1875 [============>.................] - ETA: 0s - loss: 0.2078 - accuracy: 0.9246 944/1875 [==============>...............] - ETA: 0s - loss: 0.2097 - accuracy: 0.92361050/1875 [===============>..............] - ETA: 0s - loss: 0.2101 - accuracy: 0.92281157/1875 [=================>............] - ETA: 0s - loss: 0.2087 - accuracy: 0.92361264/1875 [===================>..........] - ETA: 0s - loss: 0.2092 - accuracy: 0.92311369/1875 [====================>.........] - ETA: 0s - loss: 0.2091 - accuracy: 0.92311474/1875 [======================>.......] - ETA: 0s - loss: 0.2091 - accuracy: 0.92311578/1875 [========================>.....] - ETA: 0s - loss: 0.2096 - accuracy: 0.92311683/1875 [=========================>....] - ETA: 0s - loss: 0.2095 - accuracy: 0.92321788/1875 [===========================>..] - ETA: 0s - loss: 0.2093 - accuracy: 0.92331875/1875 [==============================] - 1s 534us/step - loss: 0.2090 - accuracy: 0.9232 - val_loss: 0.3418 - val_accuracy: 0.8851
Epoch 15/50
1/1875 [..............................] - ETA: 1s - loss: 0.1196 - accuracy: 0.9688 106/1875 [>.............................] - ETA: 0s - loss: 0.1984 - accuracy: 0.9251 212/1875 [==>...........................] - ETA: 0s - loss: 0.2003 - accuracy: 0.9261 319/1875 [====>.........................] - ETA: 0s - loss: 0.2014 - accuracy: 0.9246 424/1875 [=====>........................] - ETA: 0s - loss: 0.2003 - accuracy: 0.9238 528/1875 [=======>......................] - ETA: 0s - loss: 0.2014 - accuracy: 0.9231 635/1875 [=========>....................] - ETA: 0s - loss: 0.1993 - accuracy: 0.9244 741/1875 [==========>...................] - ETA: 0s - loss: 0.2009 - accuracy: 0.9237 845/1875 [============>.................] - ETA: 0s - loss: 0.2003 - accuracy: 0.9240 950/1875 [==============>...............] - ETA: 0s - loss: 0.1996 - accuracy: 0.92431055/1875 [===============>..............] - ETA: 0s - loss: 0.2021 - accuracy: 0.92321161/1875 [=================>............] - ETA: 0s - loss: 0.2024 - accuracy: 0.92321267/1875 [===================>..........] - ETA: 0s - loss: 0.2024 - accuracy: 0.92351373/1875 [====================>.........] - ETA: 0s - loss: 0.2020 - accuracy: 0.92401479/1875 [======================>.......] - ETA: 0s - loss: 0.2019 - accuracy: 0.92411583/1875 [========================>.....] - ETA: 0s - loss: 0.2001 - accuracy: 0.92491690/1875 [==========================>...] - ETA: 0s - loss: 0.2004 - accuracy: 0.92491796/1875 [===========================>..] - ETA: 0s - loss: 0.2013 - accuracy: 0.92431875/1875 [==============================] - 1s 532us/step - loss: 0.2014 - accuracy: 0.9243 - val_loss: 0.3532 - val_accuracy: 0.8836
Epoch 16/50
1/1875 [..............................] - ETA: 1s - loss: 0.2534 - accuracy: 0.8438 105/1875 [>.............................] - ETA: 0s - loss: 0.2024 - accuracy: 0.9229 210/1875 [==>...........................] - ETA: 0s - loss: 0.1941 - accuracy: 0.9256 315/1875 [====>.........................] - ETA: 0s - loss: 0.1910 - accuracy: 0.9273 421/1875 [=====>........................] - ETA: 0s - loss: 0.1868 - accuracy: 0.9299 525/1875 [=======>......................] - ETA: 0s - loss: 0.1902 - accuracy: 0.9283 629/1875 [=========>....................] - ETA: 0s - loss: 0.1917 - accuracy: 0.9275 733/1875 [==========>...................] - ETA: 0s - loss: 0.1916 - accuracy: 0.9282 838/1875 [============>.................] - ETA: 0s - loss: 0.1920 - accuracy: 0.9273 945/1875 [==============>...............] - ETA: 0s - loss: 0.1910 - accuracy: 0.92791053/1875 [===============>..............] - ETA: 0s - loss: 0.1908 - accuracy: 0.92851160/1875 [=================>............] - ETA: 0s - loss: 0.1914 - accuracy: 0.92841266/1875 [===================>..........] - ETA: 0s - loss: 0.1930 - accuracy: 0.92781371/1875 [====================>.........] - ETA: 0s - loss: 0.1942 - accuracy: 0.92711480/1875 [======================>.......] - ETA: 0s - loss: 0.1949 - accuracy: 0.92691589/1875 [========================>.....] - ETA: 0s - loss: 0.1952 - accuracy: 0.92691698/1875 [==========================>...] - ETA: 0s - loss: 0.1958 - accuracy: 0.92681804/1875 [===========================>..] - ETA: 0s - loss: 0.1963 - accuracy: 0.92641875/1875 [==============================] - 1s 535us/step - loss: 0.1964 - accuracy: 0.9264 - val_loss: 0.3350 - val_accuracy: 0.8907
Epoch 17/50
1/1875 [..............................] - ETA: 1s - loss: 0.2541 - accuracy: 0.9375 105/1875 [>.............................] - ETA: 0s - loss: 0.1923 - accuracy: 0.9271 209/1875 [==>...........................] - ETA: 0s - loss: 0.1921 - accuracy: 0.9255 315/1875 [====>.........................] - ETA: 0s - loss: 0.1983 - accuracy: 0.9231 422/1875 [=====>........................] - ETA: 0s - loss: 0.1959 - accuracy: 0.9240 531/1875 [=======>......................] - ETA: 0s - loss: 0.1937 - accuracy: 0.9255 641/1875 [=========>....................] - ETA: 0s - loss: 0.1918 - accuracy: 0.9266 751/1875 [===========>..................] - ETA: 0s - loss: 0.1913 - accuracy: 0.9273 861/1875 [============>.................] - ETA: 0s - loss: 0.1905 - accuracy: 0.9276 972/1875 [==============>...............] - ETA: 0s - loss: 0.1899 - accuracy: 0.92751084/1875 [================>.............] - ETA: 0s - loss: 0.1914 - accuracy: 0.92721190/1875 [==================>...........] - ETA: 0s - loss: 0.1922 - accuracy: 0.92701301/1875 [===================>..........] - ETA: 0s - loss: 0.1921 - accuracy: 0.92711410/1875 [=====================>........] - ETA: 0s - loss: 0.1929 - accuracy: 0.92681523/1875 [=======================>......] - ETA: 0s - loss: 0.1933 - accuracy: 0.92651634/1875 [=========================>....] - ETA: 0s - loss: 0.1924 - accuracy: 0.92671746/1875 [==========================>...] - ETA: 0s - loss: 0.1919 - accuracy: 0.92711857/1875 [============================>.] - ETA: 0s - loss: 0.1917 - accuracy: 0.92761875/1875 [==============================] - 1s 513us/step - loss: 0.1919 - accuracy: 0.9277 - val_loss: 0.3398 - val_accuracy: 0.8902
Epoch 18/50
1/1875 [..............................] - ETA: 1s - loss: 0.1059 - accuracy: 0.9375 110/1875 [>.............................] - ETA: 0s - loss: 0.1798 - accuracy: 0.9307 220/1875 [==>...........................] - ETA: 0s - loss: 0.1737 - accuracy: 0.9328 331/1875 [====>.........................] - ETA: 0s - loss: 0.1744 - accuracy: 0.9334 442/1875 [======>.......................] - ETA: 0s - loss: 0.1763 - accuracy: 0.9342 554/1875 [=======>......................] - ETA: 0s - loss: 0.1773 - accuracy: 0.9340 661/1875 [=========>....................] - ETA: 0s - loss: 0.1771 - accuracy: 0.9336 771/1875 [===========>..................] - ETA: 0s - loss: 0.1814 - accuracy: 0.9318 883/1875 [=============>................] - ETA: 0s - loss: 0.1829 - accuracy: 0.9312 995/1875 [==============>...............] - ETA: 0s - loss: 0.1833 - accuracy: 0.93131107/1875 [================>.............] - ETA: 0s - loss: 0.1837 - accuracy: 0.93121218/1875 [==================>...........] - ETA: 0s - loss: 0.1837 - accuracy: 0.93151330/1875 [====================>.........] - ETA: 0s - loss: 0.1846 - accuracy: 0.93111440/1875 [======================>.......] - ETA: 0s - loss: 0.1846 - accuracy: 0.93091552/1875 [=======================>......] - ETA: 0s - loss: 0.1843 - accuracy: 0.93111664/1875 [=========================>....] - ETA: 0s - loss: 0.1844 - accuracy: 0.93101776/1875 [===========================>..] - ETA: 0s - loss: 0.1857 - accuracy: 0.93041875/1875 [==============================] - 1s 506us/step - loss: 0.1860 - accuracy: 0.9301 - val_loss: 0.3470 - val_accuracy: 0.8857
Epoch 19/50
1/1875 [..............................] - ETA: 1s - loss: 0.2471 - accuracy: 0.8750 110/1875 [>.............................] - ETA: 0s - loss: 0.1839 - accuracy: 0.9358 221/1875 [==>...........................] - ETA: 0s - loss: 0.1775 - accuracy: 0.9347 331/1875 [====>.........................] - ETA: 0s - loss: 0.1766 - accuracy: 0.9352 442/1875 [======>.......................] - ETA: 0s - loss: 0.1767 - accuracy: 0.9352 554/1875 [=======>......................] - ETA: 0s - loss: 0.1808 - accuracy: 0.9339 665/1875 [=========>....................] - ETA: 0s - loss: 0.1789 - accuracy: 0.9345 774/1875 [===========>..................] - ETA: 0s - loss: 0.1794 - accuracy: 0.9343 882/1875 [=============>................] - ETA: 0s - loss: 0.1839 - accuracy: 0.9330 991/1875 [==============>...............] - ETA: 0s - loss: 0.1818 - accuracy: 0.93381099/1875 [================>.............] - ETA: 0s - loss: 0.1800 - accuracy: 0.93451209/1875 [==================>...........] - ETA: 0s - loss: 0.1807 - accuracy: 0.93391315/1875 [====================>.........] - ETA: 0s - loss: 0.1799 - accuracy: 0.93421421/1875 [=====================>........] - ETA: 0s - loss: 0.1801 - accuracy: 0.93411527/1875 [=======================>......] - ETA: 0s - loss: 0.1808 - accuracy: 0.93371634/1875 [=========================>....] - ETA: 0s - loss: 0.1813 - accuracy: 0.93331740/1875 [==========================>...] - ETA: 0s - loss: 0.1808 - accuracy: 0.93371846/1875 [============================>.] - ETA: 0s - loss: 0.1810 - accuracy: 0.93321875/1875 [==============================] - 1s 519us/step - loss: 0.1813 - accuracy: 0.9333 - val_loss: 0.3428 - val_accuracy: 0.8885
Epoch 20/50
1/1875 [..............................] - ETA: 1s - loss: 0.4012 - accuracy: 0.9062 107/1875 [>.............................] - ETA: 0s - loss: 0.1669 - accuracy: 0.9419 213/1875 [==>...........................] - ETA: 0s - loss: 0.1714 - accuracy: 0.9385 320/1875 [====>.........................] - ETA: 0s - loss: 0.1728 - accuracy: 0.9367 426/1875 [=====>........................] - ETA: 0s - loss: 0.1748 - accuracy: 0.9366 533/1875 [=======>......................] - ETA: 0s - loss: 0.1791 - accuracy: 0.9338 639/1875 [=========>....................] - ETA: 0s - loss: 0.1760 - accuracy: 0.9340 746/1875 [==========>...................] - ETA: 0s - loss: 0.1744 - accuracy: 0.9349 854/1875 [============>.................] - ETA: 0s - loss: 0.1730 - accuracy: 0.9357 961/1875 [==============>...............] - ETA: 0s - loss: 0.1741 - accuracy: 0.93531065/1875 [================>.............] - ETA: 0s - loss: 0.1743 - accuracy: 0.93541171/1875 [=================>............] - ETA: 0s - loss: 0.1741 - accuracy: 0.93541278/1875 [===================>..........] - ETA: 0s - loss: 0.1741 - accuracy: 0.93551385/1875 [=====================>........] - ETA: 0s - loss: 0.1739 - accuracy: 0.93561487/1875 [======================>.......] - ETA: 0s - loss: 0.1742 - accuracy: 0.93541593/1875 [========================>.....] - ETA: 0s - loss: 0.1757 - accuracy: 0.93471700/1875 [==========================>...] - ETA: 0s - loss: 0.1758 - accuracy: 0.93471806/1875 [===========================>..] - ETA: 0s - loss: 0.1761 - accuracy: 0.93471875/1875 [==============================] - 1s 529us/step - loss: 0.1767 - accuracy: 0.9346 - val_loss: 0.3781 - val_accuracy: 0.8784
Epoch 21/50
1/1875 [..............................] - ETA: 1s - loss: 0.1445 - accuracy: 0.9062 106/1875 [>.............................] - ETA: 0s - loss: 0.1805 - accuracy: 0.9319 214/1875 [==>...........................] - ETA: 0s - loss: 0.1748 - accuracy: 0.9346 321/1875 [====>.........................] - ETA: 0s - loss: 0.1715 - accuracy: 0.9357 428/1875 [=====>........................] - ETA: 0s - loss: 0.1715 - accuracy: 0.9355 535/1875 [=======>......................] - ETA: 0s - loss: 0.1710 - accuracy: 0.9355 642/1875 [=========>....................] - ETA: 0s - loss: 0.1693 - accuracy: 0.9360 748/1875 [==========>...................] - ETA: 0s - loss: 0.1688 - accuracy: 0.9371 854/1875 [============>.................] - ETA: 0s - loss: 0.1682 - accuracy: 0.9374 960/1875 [==============>...............] - ETA: 0s - loss: 0.1683 - accuracy: 0.93681066/1875 [================>.............] - ETA: 0s - loss: 0.1667 - accuracy: 0.93741172/1875 [=================>............] - ETA: 0s - loss: 0.1669 - accuracy: 0.93741279/1875 [===================>..........] - ETA: 0s - loss: 0.1678 - accuracy: 0.93691390/1875 [=====================>........] - ETA: 0s - loss: 0.1672 - accuracy: 0.93731502/1875 [=======================>......] - ETA: 0s - loss: 0.1687 - accuracy: 0.93721609/1875 [========================>.....] - ETA: 0s - loss: 0.1695 - accuracy: 0.93701713/1875 [==========================>...] - ETA: 0s - loss: 0.1698 - accuracy: 0.93681819/1875 [============================>.] - ETA: 0s - loss: 0.1709 - accuracy: 0.93651875/1875 [==============================] - 1s 525us/step - loss: 0.1715 - accuracy: 0.9361 - val_loss: 0.3583 - val_accuracy: 0.8857
Epoch 22/50
1/1875 [..............................] - ETA: 1s - loss: 0.1127 - accuracy: 0.9688 106/1875 [>.............................] - ETA: 0s - loss: 0.1448 - accuracy: 0.9458 213/1875 [==>...........................] - ETA: 0s - loss: 0.1526 - accuracy: 0.9440 319/1875 [====>.........................] - ETA: 0s - loss: 0.1578 - accuracy: 0.9421 430/1875 [=====>........................] - ETA: 0s - loss: 0.1583 - accuracy: 0.9417 538/1875 [=======>......................] - ETA: 0s - loss: 0.1614 - accuracy: 0.9403 640/1875 [=========>....................] - ETA: 0s - loss: 0.1631 - accuracy: 0.9387 747/1875 [==========>...................] - ETA: 0s - loss: 0.1635 - accuracy: 0.9388 853/1875 [============>.................] - ETA: 0s - loss: 0.1654 - accuracy: 0.9385 963/1875 [==============>...............] - ETA: 0s - loss: 0.1646 - accuracy: 0.93881072/1875 [================>.............] - ETA: 0s - loss: 0.1643 - accuracy: 0.93891179/1875 [=================>............] - ETA: 0s - loss: 0.1643 - accuracy: 0.93831287/1875 [===================>..........] - ETA: 0s - loss: 0.1654 - accuracy: 0.93781394/1875 [=====================>........] - ETA: 0s - loss: 0.1642 - accuracy: 0.93801505/1875 [=======================>......] - ETA: 0s - loss: 0.1656 - accuracy: 0.93761612/1875 [========================>.....] - ETA: 0s - loss: 0.1655 - accuracy: 0.93741718/1875 [==========================>...] - ETA: 0s - loss: 0.1665 - accuracy: 0.93741826/1875 [============================>.] - ETA: 0s - loss: 0.1666 - accuracy: 0.93741875/1875 [==============================] - 1s 524us/step - loss: 0.1673 - accuracy: 0.9372 - val_loss: 0.3705 - val_accuracy: 0.8902
Epoch 23/50
1/1875 [..............................] - ETA: 1s - loss: 0.1478 - accuracy: 0.9688 107/1875 [>.............................] - ETA: 0s - loss: 0.1672 - accuracy: 0.9355 213/1875 [==>...........................] - ETA: 0s - loss: 0.1647 - accuracy: 0.9388 320/1875 [====>.........................] - ETA: 0s - loss: 0.1630 - accuracy: 0.9398 427/1875 [=====>........................] - ETA: 0s - loss: 0.1634 - accuracy: 0.9395 533/1875 [=======>......................] - ETA: 0s - loss: 0.1641 - accuracy: 0.9391 640/1875 [=========>....................] - ETA: 0s - loss: 0.1641 - accuracy: 0.9382 749/1875 [==========>...................] - ETA: 0s - loss: 0.1632 - accuracy: 0.9391 857/1875 [============>.................] - ETA: 0s - loss: 0.1622 - accuracy: 0.9391 964/1875 [==============>...............] - ETA: 0s - loss: 0.1625 - accuracy: 0.93931071/1875 [================>.............] - ETA: 0s - loss: 0.1649 - accuracy: 0.93841178/1875 [=================>............] - ETA: 0s - loss: 0.1651 - accuracy: 0.93851285/1875 [===================>..........] - ETA: 0s - loss: 0.1653 - accuracy: 0.93821391/1875 [=====================>........] - ETA: 0s - loss: 0.1646 - accuracy: 0.93841499/1875 [======================>.......] - ETA: 0s - loss: 0.1644 - accuracy: 0.93861610/1875 [========================>.....] - ETA: 0s - loss: 0.1647 - accuracy: 0.93831716/1875 [==========================>...] - ETA: 0s - loss: 0.1644 - accuracy: 0.93831822/1875 [============================>.] - ETA: 0s - loss: 0.1648 - accuracy: 0.93801875/1875 [==============================] - 1s 524us/step - loss: 0.1649 - accuracy: 0.9379 - val_loss: 0.3823 - val_accuracy: 0.8879
Epoch 24/50
1/1875 [..............................] - ETA: 1s - loss: 0.1816 - accuracy: 0.9375 107/1875 [>.............................] - ETA: 0s - loss: 0.1471 - accuracy: 0.9407 213/1875 [==>...........................] - ETA: 0s - loss: 0.1552 - accuracy: 0.9400 321/1875 [====>.........................] - ETA: 0s - loss: 0.1572 - accuracy: 0.9412 427/1875 [=====>........................] - ETA: 0s - loss: 0.1583 - accuracy: 0.9401 534/1875 [=======>......................] - ETA: 0s - loss: 0.1596 - accuracy: 0.9388 641/1875 [=========>....................] - ETA: 0s - loss: 0.1608 - accuracy: 0.9384 747/1875 [==========>...................] - ETA: 0s - loss: 0.1639 - accuracy: 0.9372 853/1875 [============>.................] - ETA: 0s - loss: 0.1632 - accuracy: 0.9380 962/1875 [==============>...............] - ETA: 0s - loss: 0.1629 - accuracy: 0.93821070/1875 [================>.............] - ETA: 0s - loss: 0.1615 - accuracy: 0.93891177/1875 [=================>............] - ETA: 0s - loss: 0.1623 - accuracy: 0.93861283/1875 [===================>..........] - ETA: 0s - loss: 0.1627 - accuracy: 0.93851390/1875 [=====================>........] - ETA: 0s - loss: 0.1620 - accuracy: 0.93911496/1875 [======================>.......] - ETA: 0s - loss: 0.1618 - accuracy: 0.93901602/1875 [========================>.....] - ETA: 0s - loss: 0.1622 - accuracy: 0.93901708/1875 [==========================>...] - ETA: 0s - loss: 0.1618 - accuracy: 0.93921814/1875 [============================>.] - ETA: 0s - loss: 0.1611 - accuracy: 0.93931875/1875 [==============================] - 1s 527us/step - loss: 0.1615 - accuracy: 0.9390 - val_loss: 0.3860 - val_accuracy: 0.8825
Epoch 25/50
1/1875 [..............................] - ETA: 1s - loss: 0.1061 - accuracy: 0.9688 107/1875 [>.............................] - ETA: 0s - loss: 0.1505 - accuracy: 0.9460 213/1875 [==>...........................] - ETA: 0s - loss: 0.1488 - accuracy: 0.9448 320/1875 [====>.........................] - ETA: 0s - loss: 0.1478 - accuracy: 0.9452 428/1875 [=====>........................] - ETA: 0s - loss: 0.1481 - accuracy: 0.9441 536/1875 [=======>......................] - ETA: 0s - loss: 0.1525 - accuracy: 0.9415 642/1875 [=========>....................] - ETA: 0s - loss: 0.1532 - accuracy: 0.9408 748/1875 [==========>...................] - ETA: 0s - loss: 0.1548 - accuracy: 0.9403 853/1875 [============>.................] - ETA: 0s - loss: 0.1538 - accuracy: 0.9404 959/1875 [==============>...............] - ETA: 0s - loss: 0.1547 - accuracy: 0.94011065/1875 [================>.............] - ETA: 0s - loss: 0.1542 - accuracy: 0.94041171/1875 [=================>............] - ETA: 0s - loss: 0.1548 - accuracy: 0.94051277/1875 [===================>..........] - ETA: 0s - loss: 0.1550 - accuracy: 0.94061383/1875 [=====================>........] - ETA: 0s - loss: 0.1555 - accuracy: 0.94041490/1875 [======================>.......] - ETA: 0s - loss: 0.1566 - accuracy: 0.94011599/1875 [========================>.....] - ETA: 0s - loss: 0.1561 - accuracy: 0.94031707/1875 [==========================>...] - ETA: 0s - loss: 0.1569 - accuracy: 0.94021810/1875 [===========================>..] - ETA: 0s - loss: 0.1580 - accuracy: 0.93991875/1875 [==============================] - 1s 529us/step - loss: 0.1578 - accuracy: 0.9399 - val_loss: 0.3772 - val_accuracy: 0.8875
Epoch 26/50
1/1875 [..............................] - ETA: 1s - loss: 0.0922 - accuracy: 0.9688 106/1875 [>.............................] - ETA: 0s - loss: 0.1357 - accuracy: 0.9540 214/1875 [==>...........................] - ETA: 0s - loss: 0.1460 - accuracy: 0.9467 321/1875 [====>.........................] - ETA: 0s - loss: 0.1514 - accuracy: 0.9445 429/1875 [=====>........................] - ETA: 0s - loss: 0.1470 - accuracy: 0.9451 536/1875 [=======>......................] - ETA: 0s - loss: 0.1453 - accuracy: 0.9455 642/1875 [=========>....................] - ETA: 0s - loss: 0.1458 - accuracy: 0.9455 748/1875 [==========>...................] - ETA: 0s - loss: 0.1488 - accuracy: 0.9447 855/1875 [============>.................] - ETA: 0s - loss: 0.1491 - accuracy: 0.9445 958/1875 [==============>...............] - ETA: 0s - loss: 0.1493 - accuracy: 0.94471064/1875 [================>.............] - ETA: 0s - loss: 0.1497 - accuracy: 0.94451171/1875 [=================>............] - ETA: 0s - loss: 0.1500 - accuracy: 0.94441277/1875 [===================>..........] - ETA: 0s - loss: 0.1495 - accuracy: 0.94441383/1875 [=====================>........] - ETA: 0s - loss: 0.1495 - accuracy: 0.94441489/1875 [======================>.......] - ETA: 0s - loss: 0.1499 - accuracy: 0.94441596/1875 [========================>.....] - ETA: 0s - loss: 0.1508 - accuracy: 0.94421705/1875 [==========================>...] - ETA: 0s - loss: 0.1516 - accuracy: 0.94421815/1875 [============================>.] - ETA: 0s - loss: 0.1519 - accuracy: 0.94391875/1875 [==============================] - 1s 526us/step - loss: 0.1519 - accuracy: 0.9440 - val_loss: 0.4038 - val_accuracy: 0.8829
Epoch 27/50
1/1875 [..............................] - ETA: 1s - loss: 0.1119 - accuracy: 0.9375 107/1875 [>.............................] - ETA: 0s - loss: 0.1337 - accuracy: 0.9477 212/1875 [==>...........................] - ETA: 0s - loss: 0.1343 - accuracy: 0.9484 319/1875 [====>.........................] - ETA: 0s - loss: 0.1422 - accuracy: 0.9466 426/1875 [=====>........................] - ETA: 0s - loss: 0.1421 - accuracy: 0.9466 532/1875 [=======>......................] - ETA: 0s - loss: 0.1434 - accuracy: 0.9458 640/1875 [=========>....................] - ETA: 0s - loss: 0.1450 - accuracy: 0.9454 748/1875 [==========>...................] - ETA: 0s - loss: 0.1475 - accuracy: 0.9444 856/1875 [============>.................] - ETA: 0s - loss: 0.1458 - accuracy: 0.9450 964/1875 [==============>...............] - ETA: 0s - loss: 0.1480 - accuracy: 0.94431071/1875 [================>.............] - ETA: 0s - loss: 0.1480 - accuracy: 0.94411174/1875 [=================>............] - ETA: 0s - loss: 0.1479 - accuracy: 0.94411280/1875 [===================>..........] - ETA: 0s - loss: 0.1483 - accuracy: 0.94431387/1875 [=====================>........] - ETA: 0s - loss: 0.1480 - accuracy: 0.94421494/1875 [======================>.......] - ETA: 0s - loss: 0.1483 - accuracy: 0.94411601/1875 [========================>.....] - ETA: 0s - loss: 0.1475 - accuracy: 0.94411708/1875 [==========================>...] - ETA: 0s - loss: 0.1480 - accuracy: 0.94381815/1875 [============================>.] - ETA: 0s - loss: 0.1488 - accuracy: 0.94361875/1875 [==============================] - 1s 526us/step - loss: 0.1494 - accuracy: 0.9434 - val_loss: 0.3980 - val_accuracy: 0.8845
Epoch 28/50
1/1875 [..............................] - ETA: 1s - loss: 0.0920 - accuracy: 0.9688 106/1875 [>.............................] - ETA: 0s - loss: 0.1353 - accuracy: 0.9481 213/1875 [==>...........................] - ETA: 0s - loss: 0.1335 - accuracy: 0.9487 323/1875 [====>.........................] - ETA: 0s - loss: 0.1384 - accuracy: 0.9470 431/1875 [=====>........................] - ETA: 0s - loss: 0.1405 - accuracy: 0.9462 533/1875 [=======>......................] - ETA: 0s - loss: 0.1412 - accuracy: 0.9468 633/1875 [=========>....................] - ETA: 0s - loss: 0.1407 - accuracy: 0.9467 732/1875 [==========>...................] - ETA: 0s - loss: 0.1408 - accuracy: 0.9464 832/1875 [============>.................] - ETA: 0s - loss: 0.1428 - accuracy: 0.9458 932/1875 [=============>................] - ETA: 0s - loss: 0.1437 - accuracy: 0.94561032/1875 [===============>..............] - ETA: 0s - loss: 0.1438 - accuracy: 0.94561133/1875 [=================>............] - ETA: 0s - loss: 0.1421 - accuracy: 0.94611237/1875 [==================>...........] - ETA: 0s - loss: 0.1418 - accuracy: 0.94611344/1875 [====================>.........] - ETA: 0s - loss: 0.1428 - accuracy: 0.94581451/1875 [======================>.......] - ETA: 0s - loss: 0.1428 - accuracy: 0.94571559/1875 [=======================>......] - ETA: 0s - loss: 0.1436 - accuracy: 0.94561666/1875 [=========================>....] - ETA: 0s - loss: 0.1435 - accuracy: 0.94551773/1875 [===========================>..] - ETA: 0s - loss: 0.1447 - accuracy: 0.94491875/1875 [==============================] - 1s 537us/step - loss: 0.1462 - accuracy: 0.9446 - val_loss: 0.3983 - val_accuracy: 0.8864
Epoch 29/50
1/1875 [..............................] - ETA: 1s - loss: 0.1195 - accuracy: 0.9375 107/1875 [>.............................] - ETA: 0s - loss: 0.1272 - accuracy: 0.9498 211/1875 [==>...........................] - ETA: 0s - loss: 0.1343 - accuracy: 0.9492 319/1875 [====>.........................] - ETA: 0s - loss: 0.1325 - accuracy: 0.9495 424/1875 [=====>........................] - ETA: 0s - loss: 0.1367 - accuracy: 0.9483 530/1875 [=======>......................] - ETA: 0s - loss: 0.1420 - accuracy: 0.9469 635/1875 [=========>....................] - ETA: 0s - loss: 0.1427 - accuracy: 0.9470 745/1875 [==========>...................] - ETA: 0s - loss: 0.1419 - accuracy: 0.9466 855/1875 [============>.................] - ETA: 0s - loss: 0.1424 - accuracy: 0.9463 965/1875 [==============>...............] - ETA: 0s - loss: 0.1440 - accuracy: 0.94571076/1875 [================>.............] - ETA: 0s - loss: 0.1464 - accuracy: 0.94461184/1875 [=================>............] - ETA: 0s - loss: 0.1462 - accuracy: 0.94471292/1875 [===================>..........] - ETA: 0s - loss: 0.1462 - accuracy: 0.94461400/1875 [=====================>........] - ETA: 0s - loss: 0.1468 - accuracy: 0.94431508/1875 [=======================>......] - ETA: 0s - loss: 0.1461 - accuracy: 0.94421616/1875 [========================>.....] - ETA: 0s - loss: 0.1445 - accuracy: 0.94491723/1875 [==========================>...] - ETA: 0s - loss: 0.1440 - accuracy: 0.94541831/1875 [============================>.] - ETA: 0s - loss: 0.1432 - accuracy: 0.94571875/1875 [==============================] - 1s 522us/step - loss: 0.1434 - accuracy: 0.9458 - val_loss: 0.4000 - val_accuracy: 0.8879
Epoch 30/50
1/1875 [..............................] - ETA: 1s - loss: 0.0880 - accuracy: 0.9688 106/1875 [>.............................] - ETA: 0s - loss: 0.1366 - accuracy: 0.9443 196/1875 [==>...........................] - ETA: 0s - loss: 0.1335 - accuracy: 0.9455 298/1875 [===>..........................] - ETA: 0s - loss: 0.1364 - accuracy: 0.9466 401/1875 [=====>........................] - ETA: 0s - loss: 0.1351 - accuracy: 0.9482 502/1875 [=======>......................] - ETA: 0s - loss: 0.1356 - accuracy: 0.9480 601/1875 [========>.....................] - ETA: 0s - loss: 0.1358 - accuracy: 0.9480 700/1875 [==========>...................] - ETA: 0s - loss: 0.1353 - accuracy: 0.9484 804/1875 [===========>..................] - ETA: 0s - loss: 0.1355 - accuracy: 0.9483 908/1875 [=============>................] - ETA: 0s - loss: 0.1368 - accuracy: 0.94821013/1875 [===============>..............] - ETA: 0s - loss: 0.1369 - accuracy: 0.94871119/1875 [================>.............] - ETA: 0s - loss: 0.1359 - accuracy: 0.94891226/1875 [==================>...........] - ETA: 0s - loss: 0.1368 - accuracy: 0.94861330/1875 [====================>.........] - ETA: 0s - loss: 0.1375 - accuracy: 0.94841435/1875 [=====================>........] - ETA: 0s - loss: 0.1384 - accuracy: 0.94801540/1875 [=======================>......] - ETA: 0s - loss: 0.1387 - accuracy: 0.94821646/1875 [=========================>....] - ETA: 0s - loss: 0.1403 - accuracy: 0.94771753/1875 [===========================>..] - ETA: 0s - loss: 0.1412 - accuracy: 0.94741859/1875 [============================>.] - ETA: 0s - loss: 0.1412 - accuracy: 0.94761875/1875 [==============================] - 1s 542us/step - loss: 0.1409 - accuracy: 0.9476 - val_loss: 0.4171 - val_accuracy: 0.8896
Epoch 31/50
1/1875 [..............................] - ETA: 1s - loss: 0.0201 - accuracy: 1.0000 106/1875 [>.............................] - ETA: 0s - loss: 0.1396 - accuracy: 0.9502 213/1875 [==>...........................] - ETA: 0s - loss: 0.1299 - accuracy: 0.9529 320/1875 [====>.........................] - ETA: 0s - loss: 0.1298 - accuracy: 0.9517 422/1875 [=====>........................] - ETA: 0s - loss: 0.1288 - accuracy: 0.9516 529/1875 [=======>......................] - ETA: 0s - loss: 0.1322 - accuracy: 0.9496 636/1875 [=========>....................] - ETA: 0s - loss: 0.1336 - accuracy: 0.9491 743/1875 [==========>...................] - ETA: 0s - loss: 0.1345 - accuracy: 0.9493 849/1875 [============>.................] - ETA: 0s - loss: 0.1340 - accuracy: 0.9496 954/1875 [==============>...............] - ETA: 0s - loss: 0.1348 - accuracy: 0.94931061/1875 [===============>..............] - ETA: 0s - loss: 0.1365 - accuracy: 0.94861167/1875 [=================>............] - ETA: 0s - loss: 0.1367 - accuracy: 0.94831275/1875 [===================>..........] - ETA: 0s - loss: 0.1363 - accuracy: 0.94881381/1875 [=====================>........] - ETA: 0s - loss: 0.1371 - accuracy: 0.94881489/1875 [======================>.......] - ETA: 0s - loss: 0.1370 - accuracy: 0.94911596/1875 [========================>.....] - ETA: 0s - loss: 0.1376 - accuracy: 0.94871704/1875 [==========================>...] - ETA: 0s - loss: 0.1383 - accuracy: 0.94841810/1875 [===========================>..] - ETA: 0s - loss: 0.1383 - accuracy: 0.94831875/1875 [==============================] - 1s 528us/step - loss: 0.1384 - accuracy: 0.9484 - val_loss: 0.4222 - val_accuracy: 0.8811
Epoch 32/50
1/1875 [..............................] - ETA: 1s - loss: 0.0782 - accuracy: 0.9688 106/1875 [>.............................] - ETA: 0s - loss: 0.1692 - accuracy: 0.9413 212/1875 [==>...........................] - ETA: 0s - loss: 0.1484 - accuracy: 0.9462 318/1875 [====>.........................] - ETA: 0s - loss: 0.1427 - accuracy: 0.9483 426/1875 [=====>........................] - ETA: 0s - loss: 0.1403 - accuracy: 0.9488 535/1875 [=======>......................] - ETA: 0s - loss: 0.1386 - accuracy: 0.9487 642/1875 [=========>....................] - ETA: 0s - loss: 0.1370 - accuracy: 0.9492 750/1875 [===========>..................] - ETA: 0s - loss: 0.1374 - accuracy: 0.9486 858/1875 [============>.................] - ETA: 0s - loss: 0.1357 - accuracy: 0.9492 964/1875 [==============>...............] - ETA: 0s - loss: 0.1349 - accuracy: 0.94961072/1875 [================>.............] - ETA: 0s - loss: 0.1346 - accuracy: 0.94991180/1875 [=================>............] - ETA: 0s - loss: 0.1353 - accuracy: 0.94951290/1875 [===================>..........] - ETA: 0s - loss: 0.1365 - accuracy: 0.94901399/1875 [=====================>........] - ETA: 0s - loss: 0.1377 - accuracy: 0.94901506/1875 [=======================>......] - ETA: 0s - loss: 0.1381 - accuracy: 0.94881612/1875 [========================>.....] - ETA: 0s - loss: 0.1370 - accuracy: 0.94921719/1875 [==========================>...] - ETA: 0s - loss: 0.1363 - accuracy: 0.94961825/1875 [============================>.] - ETA: 0s - loss: 0.1362 - accuracy: 0.94961875/1875 [==============================] - 1s 522us/step - loss: 0.1364 - accuracy: 0.9493 - val_loss: 0.4175 - val_accuracy: 0.8894
Epoch 33/50
1/1875 [..............................] - ETA: 1s - loss: 0.0568 - accuracy: 1.0000 107/1875 [>.............................] - ETA: 0s - loss: 0.1190 - accuracy: 0.9568 216/1875 [==>...........................] - ETA: 0s - loss: 0.1252 - accuracy: 0.9528 324/1875 [====>.........................] - ETA: 0s - loss: 0.1274 - accuracy: 0.9525 431/1875 [=====>........................] - ETA: 0s - loss: 0.1285 - accuracy: 0.9521 539/1875 [=======>......................] - ETA: 0s - loss: 0.1258 - accuracy: 0.9533 647/1875 [=========>....................] - ETA: 0s - loss: 0.1273 - accuracy: 0.9527 755/1875 [===========>..................] - ETA: 0s - loss: 0.1280 - accuracy: 0.9522 862/1875 [============>.................] - ETA: 0s - loss: 0.1304 - accuracy: 0.9513 969/1875 [==============>...............] - ETA: 0s - loss: 0.1296 - accuracy: 0.95171076/1875 [================>.............] - ETA: 0s - loss: 0.1277 - accuracy: 0.95231182/1875 [=================>............] - ETA: 0s - loss: 0.1269 - accuracy: 0.95241289/1875 [===================>..........] - ETA: 0s - loss: 0.1283 - accuracy: 0.95151396/1875 [=====================>........] - ETA: 0s - loss: 0.1295 - accuracy: 0.95151505/1875 [=======================>......] - ETA: 0s - loss: 0.1320 - accuracy: 0.95041615/1875 [========================>.....] - ETA: 0s - loss: 0.1329 - accuracy: 0.95021728/1875 [==========================>...] - ETA: 0s - loss: 0.1330 - accuracy: 0.94971836/1875 [============================>.] - ETA: 0s - loss: 0.1325 - accuracy: 0.9501
Reached its having 95% Accuracy!!!!!!!
1875/1875 [==============================] - 1s 522us/step - loss: 0.1326 - accuracy: 0.9502 - val_loss: 0.4263 - val_accuracy: 0.8904
Test accuracy: 0.8733
1/313 [..............................] - ETA: 11s170/313 [===============>..............] - ETA: 0s 313/313 [==============================] - 0s 290us/step
predict label 9
logits:
array([[-37.425343 , -40.89008 , -36.54629 , -34.861385 , -38.464035 ,
-11.17502 , -22.839502 , -2.1895459, -27.733854 , 6.189763 ]],
dtype=float32)
probabilities:
array([[1.1431441e-19, 3.5758957e-21, 2.7533922e-19, 1.4846137e-18,
4.0457830e-20, 2.8738913e-08, 2.4697334e-13, 2.2951591e-04,
1.8495244e-15, 9.9977046e-01]], dtype=float32)
number 7 probabilities is 0.92
perdition first 10
real first 10
xxx.keras format not working at macos(2023-10-14) so using xxx.h5
Model: "sequential_1"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
flatten_1 (Flatten) (None, 784) 0
dense_2 (Dense) (None, 128) 100480
dense_3 (Dense) (None, 10) 1290
=================================================================
Total params: 101770 (397.54 KB)
Trainable params: 101770 (397.54 KB)
Non-trainable params: 0 (0.00 Byte)
_________________________________________________________________
1/313 [..............................] - ETA: 5s165/313 [==============>...............] - ETA: 0s313/313 [==============================] - 0s 295us/step
perdition first 10
real first 10
first 9 on testing

https://www.tensorflow.org/tutorials/keras/classification
---
title: "Tensorflow in python 2:Fashion MNIST"
author: "Tony Duan"
date: "2023-10-11"
categories: [Python]
execute:
warning: false
error: false
format:
html:
toc: true
toc-location: left
code-fold: show
code-tools: true
number-sections: true
code-block-bg: true
code-block-border-left: "#31BAE9"
---
## about the data
This guide uses the Fashion MNIST dataset which contains 70,000 grayscale images in 10 categories. The images show individual articles of clothing at low resolution (28 by 28 pixels), as seen here:
{width="484"}
The images are 28x28 NumPy arrays, with pixel values ranging from 0 to 255. The labels are an array of integers, ranging from 0 to 9. These correspond to the class of clothing the image represents:
{width="388"}
## package
```{python}
import numpy as np
import matplotlib.pyplot as plt
import os
import tensorflow as tf
print("TensorFlow version:", tf.__version__)
```
## input data
```{python}
fashion_mnist = tf.keras.datasets.fashion_mnist
(train_images, train_labels), (test_images, test_labels) = fashion_mnist.load_data()
```
```{python}
class_names = ['T-shirt/top', 'Trouser', 'Pullover', 'Dress', 'Coat',
'Sandal', 'Shirt', 'Sneaker', 'Bag', 'Ankle boot']
```
### x_train:60000 pic with 28 by 28 pixel
```{python}
train_images.shape
```
### x_test:10000 pic with 28 by 28 pixel
```{python}
test_images.shape
```
### y_train:60000 pic lable
```{python}
train_labels.shape
```
almost each number have \~6000 so total 60,000 on training
```{python}
unique, counts = np.unique(train_labels, return_counts=True)
dict(zip(unique, counts))
```
### y_train:10000 pic lable
```{python}
test_labels.shape
```
first train pic
```{python}
plt.figure()
plt.imshow(train_images[0])
plt.colorbar()
plt.grid(False)
plt.show()
```
## data clean
Scale these values to a range of 0 to 1 before feeding them to the neural network model. To do so, divide the values by 255. It's important that the training set and the testing set be preprocessed in the same way:
```{python}
train_images = train_images / 255.0
test_images = test_images / 255.0
```
## bulid model
### model
```{python}
model = tf.keras.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dense(10)
])
```
Optimizer —This is how the model is updated based on the data it sees and its loss function.
Loss function —This measures how accurate the model is during training. You want to minimize this function to "steer" the model in the right direction.
Metrics —Used to monitor the training and testing steps. The following example uses accuracy, the fraction of the images that are correctly classified.
### loss function
```{python}
loss_fn = tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True)
```
### compile
```{python}
model.compile(optimizer='adam',
loss=loss_fn,
metrics=['accuracy'])
```
```{python}
# Show the model architecture
model.summary()
```
### traning
```{python}
model.fit(train_images, train_labels, epochs=5)
```
### add call back
```{python}
class myCallback(tf.keras.callbacks.Callback):
def on_epoch_end(self, epoch, logs={}):
if (logs.get('accuracy') > 0.95):
print("\n Reached its having 95% Accuracy!!!!!!!")
self.model.stop_training = True
callbacks = myCallback()
```
its stop on 34 epochs since it reach 95% Accuracy
```{python}
model = tf.keras.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dense(10)
])
model.compile(optimizer='adam',
loss=loss_fn,
metrics=['accuracy'])
history = model.fit(train_images, train_labels
,validation_data=(test_images, test_labels)
,epochs=50,callbacks=[callbacks])
```
### show loss chart for each Epoch
```{python}
plt.clf()
plt.plot(history.history['loss'])
plt.plot(history.history['val_loss'])
plt.title("Model Loss")
plt.xlabel("Epoch")
plt.ylabel("Loss")
plt.legend(['train', 'val'], loc='upper right')
plt.show()
```
### show Accuracy chart for each Epoch
```{python}
plt.clf()
plt.plot(history.history['accuracy'])
plt.plot(history.history['val_accuracy'])
plt.title("Model Accuracy")
plt.xlabel("Epoch")
plt.ylabel("Accuracy")
plt.legend(['train', 'val'], loc='upper right')
plt.show()
```
## evaluate
Test accuracy: 0.8733
```{python}
test_loss, test_acc = model.evaluate(test_images, test_labels, verbose=2)
print('\nTest accuracy:', test_acc)
```
## predition
```{python}
predict_x=model.predict(test_images)
classes_x=np.argmax(predict_x,axis=1)
```
### perdition first 1
predict label 9
```{python}
classes_x[:1]
```
logits:
```{python}
predict_val=predict_x[:1]
predict_val
```
probabilities:
```{python}
predict_pec=tf.nn.softmax(predict_x[:1]).numpy()
predict_pec
```
number 7 probabilities is 0.92
```{python}
predict_pec[0][9]
```
perdition first 10
```{python}
classes_x[:10]
```
real first 10
```{python}
test_labels[:10]
```
## save model
xxx.keras format not working at macos(2023-10-14) so using xxx.h5
```{python}
model.save('Fashion MNIST.h5',save_format='h5')
```
## load model
```{python}
new_model = tf.keras.models.load_model('Fashion MNIST.h5')
# Show the model architecture
new_model.summary()
```
### predition with load model
```{python}
predict_x=new_model.predict(test_images)
classes_x=np.argmax(predict_x,axis=1)
```
perdition first 10
```{python}
classes_x[:10]
```
real first 10
```{python}
test_labels[:10]
```
first 9 on testing
```{python}
plt.figure(figsize=(10,10))
for i in range(9):
plt.subplot(3,3,i+1)
plt.xticks([])
plt.yticks([])
plt.grid(False)
plt.imshow(test_images[i], cmap=plt.cm.binary)
plt.xlabel(class_names[test_labels[i]])
plt.show()
```
```{python}
classes_x[:9]
```
```{python}
for i in classes_x[:9]:
print(class_names[i])
```
## Reference
https://www.tensorflow.org/tutorials/keras/classification